Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.10.2013, 14:06
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

MongoDb nodeJs
Вопросик по node.

У меня есть модуль создающий MongoClient и экспортирующий его
var mongoclient = new MongoClient(new Server("localhost", 27017, {native_parser: true}));
exports.mongoclient=mongoclient;


У меня есть контроллер который использует mongoClient
//контроллер 1
// Open the connection to the server
mongoclient.open(function(err, mongoclient) {
    //действия контролера 1
    mongoclient.close();
})


//У меня естьвторой контроллер который тоже использует mongoClient
//контроллер 2
// Open the connection to the server
mongoclient.open(function(err, mongoclient) {
    //действия контролера 2
    mongoclient.close();
})


Оба контролера прибегают к методу OPEN.
Вопрос имею ли я право вызывать метод Open из каждого контролера? Метод connect как я понял не могу так как создается новое подключение.

Mongoose пока отбросил так как мне ненужны модели, типов записей очень много и я не cмогу поддерживать в актуальном состоянии такое количество sheme. В конце концов роль контролера сводится к сохранению scope angular, с примитивными проверками на безопасность перед сохранением.

Еще вопрос может как то можно сделать mongose без схемы ?

UPD Ща попробую вот так.
var Any = new Schema({ any: {} });

Болт это всеголишь примеси Они в поле any будут заливатся, а мне нужно целиком в документ напихать.
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 14.10.2013 в 15:33.
Ответить с цитированием
  #2 (permalink)  
Старый 14.10.2013, 15:46
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

Решение для Moongose.
опцию strict нужно выставлять в false
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');

var Any = new mongoose.Schema({}, { strict: false });
var Doc  = mongoose.model('Doc',Any);

var doc = new Doc({ x: [3, 4, { y: "changed" }] });

doc.save(function (err,data,affected) {
//  if (err) 
  console.log(data);
})


Теперь можно работать без sheme а как появится возможность то добавить их при чем только к тем документам к каким захочу. Живем
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 14.10.2013 в 15:50.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
nodejs и mongodb не устанавливается через npm satan AJAX и COMET 1 17.06.2013 11:39
Senior JavaScript developer (NodeJS + MongoDB) Украина oversun Работа 0 14.03.2013 17:13
немного об nodejs qwermjk AJAX и COMET 5 15.02.2013 10:57
Nodejs и sqlite Octane Серверные языки и технологии 16 21.10.2012 23:18
Comet: NodeJS - с чего начать разработку? Vulkan AJAX и COMET 13 27.11.2010 19:25